//package com.inspur.edp.bff.designtime.generator.entity.node;
//
//import com.inspur.edp.bff.designtime.generator.VmGeneratorContext;
//import com.inspur.edp.bff.designtime.generator.core.VmCoreHelper;
//import com.inspur.edp.caf.generator.BaseGenerator;
//
//import com.inspur.edp.cef.generator.coreGenerator.entityGenerator.serializer.EntityDataSerializerGenerator;
//import com.inspur.edp.cef.generator.overall.commonModel.CommonModelGeneratorContext;
//import com.inspur.edp.das.commonmodel.IGspCommonElement;
//import com.inspur.edp.das.commonmodel.IGspCommonModel;
//import com.inspur.edp.das.commonmodel.IGspCommonObject;
//
//import java.util.ArrayList;
//
////Cef部分迁移
//public class CefEntityDataSerGenerator extends
//        EntityDataSerializerGenerator {
//
//  private VmGeneratorContext vmGenContext;
//  private IGspCommonObject node;
//
//  public CefEntityDataSerGenerator(VmGeneratorContext vmGenContext,
//      IGspCommonObject node) {
//    super(getCefContext(vmGenContext, node));
//    this.vmGenContext = vmGenContext;
//    this.node = node;
//  }
//
//  private static CefVoNodeGeneratorContext getCefContext(VmGeneratorContext vmGenContext,
//                                                         IGspCommonObject node) {
//    CefViewModelGenContext modelContext = new CefViewModelGenContext(vmGenContext);
//    CefViewModelCoreGenContext tempVar = new CefViewModelCoreGenContext(modelContext,
//        vmGenContext.getVm());
//
//    tempVar.setCompilationUnitInfo (vmGenContext.getCoreGenContext().getCompilationUnitInfo());
//    tempVar.setNamespace(VmCoreHelper.getNamespace(vmGenContext.getVm()));
//    CefViewModelCoreGenContext entityContext = tempVar;
//    return new CefVoNodeGeneratorContext(entityContext, node);
//  }
//
//  @Override
//  protected java.util.ArrayList<BaseGenerator> createClassExtendChildGenrators() {
//    ArrayList<BaseGenerator>  list = super.createClassExtendChildGenrators();
//    if (list==null)
//      list=new ArrayList<BaseGenerator>();
//    for (IGspCommonObject obj:node.getContainChildObjects())
//    {
//      list.add(new CefEntityDataSerGenerator(vmGenContext, obj));
//    }
//    return list;
//    }
//
//
//  @Override
//  protected void afterGenerate() {
//    super.afterGenerate();
//    //TODO 临时注释，过后考虑：合并Cef后，是否该类可以删除
//    //if (node.ParentObject == null)
//    //    vmGenContext.EntityContext.MainObjectSerializerType = new MediateType(GetNameSpace(), GetName());
//  }
//
//
//}